$(document).ready(function(){    
    $("#dp_fecha_vencimiento").datepicker({
        numberOfMonths: 2,
        minDate: 0,
        maxDate: "+1M"
    });
    
    cargarDatosOferta();
    bindingSector();
    bindingPersona();
});

/*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

function cargarDatosOferta(){
    var loading = "<tr><td align='right'><span class='spn_loading'><img src='WEB-CONTENT/img/progress.gif'/></span></td></tr>"
    $("#grid_ofertas table").html(loading);
    
    var html    = "<tr>\n\
                    <td class='td-head'>Dirigido a</td>\n\
                    <td class='td-head'>Descripcion</td>\n\
                    <td class='td-head' align='center'>Creacion</td>\n\
                    <td class='td-head' align='center'>Vencimiento</td>\n\
                    <td class='td-head' align='center'>Opciones</td>\n\
                </tr>";
    
    var url     = par_sis[2]+par_sis[11]+par_sis[71];
    
    $.getJSON(
        url,
        function(data) {
            $.each(data, function(key, val) {
                html += "<tr id='"+val["cod"]+"'>\n\
                            <td style='width:15%;'>"+val["tip_alum"]+"</td>\n\
                            <td style='width:35%;'>"+val["des"]+"</td>\n\
                            <td align='center' style='width:15%;'>"+val["fec_cre"]+"</td>\n\
                            <td align='center' style='width:15%;'>"+val["fec_ven"]+"</td>\n\
                            <td align='center' style='width:20%;'><a href='#!' onclick='verDetalleOferta("+'"'+val["cod"]+'"'+")'>Ver detalle</a> / <a href='#!' onclick='validarEliminarOferta("+'"'+val["cod"]+'"'+")'>Eliminar</a></td>\n\
                        </tr>";
            });
            $("#grid_ofertas table").html(html);
        });    
}

function cargarDatosPublicarOferta(){
    var html    = "<tr>\n\
                    <td class='td-head'>Dirigido a</td>\n\
                    <td class='td-head'>Descripcion</td>\n\
                    <td align='center' class='td-head'>Creacion</td>\n\
                    <td align='center' class='td-head'>Vencimiento</td>\n\
                    <td colspan='2' align='center' class='td-head'>Opciones</td>\n\
                </tr>";
    
    var url     = par_sis[2]+par_sis[11]+par_sis[71];
    
    $.getJSON(
        url,
        function(data) {
            $.each(data, function(key, val) {
                html += "<tr id='"+val["cod"]+"'>\n\
                            <td style='width:15%;'>"+val["tip_alum"]+"</td>\n\
                            <td style='width:35%;'>"+val["des"]+"</td>\n\
                            <td align='center' style='width:15%;'>"+val["fec_cre"]+"</td>\n\
                            <td align='center' style='width:15%;'>"+val["fec_ven"]+"</td>\n\
                            <td align='center' style='width:15%;'><a href='#!' onclick='verDetalleOferta('"+val["cod"]+"')'>ver detalle</a></td>\n\
                            <td class='ckb_oferta' align='center' style='width:5%;'><input type='checkbox'></td>\n\
                        </tr>";
            });
            $("#grid_publicar_ofertas table").html(html);
        });   
}

function cargarGridPendientes(){
    var html    = "<tr>\n\
                    <td class='td-head'>Creacion</td>\n\
                    <td class='td-head'>Vencimiento</td>\n\
                    <td class='td-head'>Tipo posicion</td>\n\
                    <td class='td-head'>Cargo</td>\n\
                    <td colspan='2' align='center' class='td-head'>Ver Detalles</td>\n\
                </tr>";
    
    var url     = par_sis[2]+par_sis[11]+par_sis[76];
    $.getJSON(
        url,
        function(data) {
            $.each(data, function(key, val) {
                html += "<tr id='"+val["cod"]+"'>\n\
                            <td style='width:15%;'>"+val["fec_cre"]+"</td>\n\
                            <td style='width:15%;'>"+val["fec_ven"]+"</td>\n\
                            <td style='width:20%;'>"+val["tip_oft"]+"</td>\n\
                            <td style='width:35%;'>"+val["crg"]+"</td>\n\
                            <td align='center' style='width:15%;'><a href='#!' onclick='verDetalleOferta('"+val["cod"]+"')'>ver detalle</a></td>\n\
                        </tr>";
            });
            $("#grid_ofertas_pendientes table").html(html);
        }); 
}

function cargarGridEjecucion(){
    var html    = "<tr>\n\
                    <td class='td-head'>Creacion</td>\n\
                    <td class='td-head'>Vencimiento</td>\n\
                    <td class='td-head'>Tipo posicion</td>\n\
                    <td class='td-head'>Cargo</td>\n\
                    <td colspan='2' align='center' class='td-head'>Ver Detalles</td>\n\
                </tr>";
    
    var url     = par_sis[2]+par_sis[11]+par_sis[77];
    $.getJSON(
        url,
        function(data) {
            $.each(data, function(key, val) {
                html += "<tr id='"+val["cod"]+"'>\n\
                            <td style='width:15%;'>"+val["fec_cre"]+"</td>\n\
                            <td style='width:15%;'>"+val["fec_ven"]+"</td>\n\
                            <td style='width:20%;'>"+val["tip_oft"]+"</td>\n\
                            <td style='width:35%;'>"+val["crg"]+"</td>\n\
                            <td align='center' style='width:15%;'><a href='#!' onclick='verDetalleOferta('"+val["cod"]+"')'>ver detalle</a></td>\n\
                        </tr>";
            });
            $("#grid_ofertas_ejecucion table").html(html);
        });
}

function cargarCantidadExpiradas(){
    var url     = par_sis[2]+par_sis[11]+par_sis[78];
    var cant    = 0;
    
    $.getJSON(
        url,
        function(data) {
            $.each(data, function(key, val) {
                cant++;
            });
            $("#lbl_ofertas_expiradas").html(cant+" ofertas");
        });
}

function cargarGridExpiradas(){
    var html    = "<tr>\n\
                    <td class='td-head'>Creacion</td>\n\
                    <td class='td-head'>Vencimiento</td>\n\
                    <td class='td-head'>Tipo posicion</td>\n\
                    <td class='td-head'>Cargo</td>\n\
                    <td colspan='2' align='center' class='td-head'>Ver Detalles</td>\n\
                </tr>";
    
    var url     = par_sis[2]+par_sis[11]+par_sis[78];
    $.getJSON(
        url,
        function(data) {
            if(data != ""){
                 $.each(data, function(key, val) {
                    html += "<tr id='"+val["cod"]+"'>\n\
                                <td style='width:15%;'>"+val["fec_cre"]+"</td>\n\
                                <td style='width:15%;'>"+val["fec_ven"]+"</td>\n\
                                <td style='width:20%;'>"+val["tip_oft"]+"</td>\n\
                                <td style='width:35%;'>"+val["crg"]+"</td>\n\
                                <td align='center' style='width:15%;'><a href='#!' onclick='verDetalleOferta('"+val["cod"]+"')'>ver detalle</a></td>\n\
                            </tr>";
                });
                $("#grid_ofertas_expiradas table").html(html);   
            }
        });
}

/*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

function refrescarPersona(tipo){
    $("#slt_persona").attr("disabled", false);
    
    var tip_ofe = tipo[tipo.selectedIndex].value;
    
    if(tip_ofe == "2" | tip_ofe == "3" | tip_ofe == "4"){
        switch (tip_ofe) {
            case "2":
                $("#slt_persona").val("4");
                $("#slt_persona").attr("disabled", true);
                break;
            case "3":
                $("#slt_persona").val("1");
                $("#slt_persona").attr("disabled", true);
                break;
            case "4":
                $("#slt_persona").val("2");
                $("#slt_persona").attr("disabled", true);
                break;
        }
    }else{
        $("#slt_persona").val("0");
    }
    
    $("#slt_persona").effect("pulsate", {times:2}, 100);
}

/*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

function mostrarCrearOferta(){
    var formulario = "#form_empresa_admi_ofer";
    
    $(formulario).find("input[type=text]").val("").css("border-color", "#BEBEBE");
    $(formulario).find("span.msj_error").html("");
    $(formulario).find("#tbl_conocimientos").html("<tr></tr>");    
    $(formulario).find("#tbl_oferta_conocimientos").html("<tr></tr>");     
    $(formulario).find("#slt_tipo_oferta").val($('option:first', this).val());
    $(formulario).find("#slt_persona").attr("disabled", false);
    $(formulario).find("#slt_persona").val($('option:first', this).val());
    $(formulario).find("#slt_sector").val($('option:first', this).val());
    $(formulario).find("#slt_habilidad").html("<option value='0' selected>Selecciona un sector</option>");
    $(formulario).find("#txt_oferta_descripcion").val("");    
    $(formulario).find("#txt_oferta_otro").val("");
    $(formulario).find(".tbl_otros_conocimientos").hide();
    
    
    $("#form_crear_oferta").slideToggle(function(){
        if($("#lnk_crear_oferta").html() == "Cancelar"){
            $("#lnk_crear_oferta").html("Crear Nueva Oferta");
        }else{            
            $("#lnk_crear_oferta").html("Cancelar");
        }
    });
}

/*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

function validarEnvioRequerimiento(){
    var tip         = $("#slt_persona").val();
    var tip_ofe     = $("#slt_tipo_oferta").val();
    var cargo       = $("#txt_oferta_cargo").val();
    var descrip     = $("#txt_oferta_descripcion").val();
    var fec_venc    = $("#dp_fecha_vencimiento").val();
    var cod_habil   = "";
    
    $("#tbl_oferta_conocimientos tr").each(function(){
        $(this).children("td").each(function(){
            var cod = $(this).find("label").attr("value");
            if(cod != null){
                cod_habil = cod_habil + cod.fillCod();
            }
        });
    });
    
    if(tip==0 | tip_ofe==0 | cargo.isEmpty() | descrip.isEmpty() | fec_venc.isEmpty() | cod_habil.isEmpty()){
        $("#form_crear_oferta").find("span.msj_error").html(msj_sis[0]);
    }else{
        $("#form_crear_oferta").find("span.msj_error").html("");
        $("#tbl_confirmacion").find("td.msj-confirmacion").html("Esta seguro de crear el requerimiento?");
        mostrarVentanaModal("#dlg_confirmacion","confirmacion","oferta-crear");
    }
}

function validarEliminarOferta(obj){
    $("#tbl_confirmacion").find("td.msj-confirmacion").html("Esta seguro de desea eliminar la oferta?");
    mostrarVentanaModal("#dlg_confirmacion","confirmacion","oferta-eliminar-"+obj);
}

function validarPublicarOfertas(){
    var cod_ofe = "";    
    
    $("#grid_publicar_ofertas table.grid tr").each(function(){
        if($(this).find("td.ckb_oferta input").attr("checked")){
            cod_ofe = "si";
        }
    });
    
    if(cod_ofe != ""){
        $("#tbl_confirmacion").find("td.msj-confirmacion").html("Esta seguro de desea publicar la(s) oferta(s) ?");
        mostrarVentanaModal("#dlg_confirmacion","confirmacion","oferta-publicar");
    }
    
}

function confirmarEvento(){
    $ventanaModal   = $("div.modalBox");    
    var evento      = $ventanaModal.children("div").attr("class").split("-");
    var url         = "";
    
    $ventanaModal.find("#btn_aceptar").attr("disabled", true);
    $ventanaModal.find("span.spn_loading").show();
    
    if(evento[1] == "crear"){
        var tip         = $("#slt_persona").val();
        var tip_ofe     = $("#slt_tipo_oferta").val();
        var cargo       = $("#txt_oferta_cargo").val();
        var descrip     = $("#txt_oferta_descripcion").val();
        var fec_venc    = $("#dp_fecha_vencimiento").val().formatFecha();
        var cod_habil   = "";
        var otros_habil = "";

        $("#tbl_oferta_conocimientos tr").each(function(){
            $(this).children("td").each(function(){
                var cod = $(this).find("label").attr("value");
                if(cod != null & cod.substring(0, 6) == "0000-0"){
                    otros_habil += cod.substring(6, cod.length)+"/";
                }else{
                    cod_habil += cod.fillCod();
                }
            });
        });

        url = par_sis[2]+par_sis[11]+par_sis[91];

        $.ajax({
            type: "POST",
            url : url,
            data : "tip="+tip+"&tp_o="+tip_ofe+"&crg="+cargo+"&descrip="+descrip+"&fec_venc="+fec_venc+"&cod_habil="+cod_habil+"0000-0"+otros_habil,
            dataType : "json",
            success : function(){
                $ventanaModal.find("span.spn_loading").hide();
                $ventanaModal.find("#btn_aceptar").attr("disabled", false);
                $("#bgmodal").find("a.cerrar-link").click();   
                mostrarCrearOferta();
                cargarDatosOferta()
                mostrarAlerta('exito',msj_sis[27]);
                
            }
        });
    }else{
        if(evento[1] == "eliminar"){
            url = par_sis[2]+par_sis[11]+par_sis[123];

            $.ajax({
                type: "POST",
                url : url,
                data : "req="+evento[2],
                dataType : "json",
                success : function(){
                    $ventanaModal.find("span.spn_loading").hide();
                    $ventanaModal.find("#btn_aceptar").attr("disabled", false);
                    $("#bgmodal").find("a.cerrar-link").click();   
                    cargarDatosOferta()
                    mostrarAlerta('exito',msj_sis[30]);

                }
            });
        }else{
            if(evento[1] == "publicar"){
                url     = par_sis[2]+par_sis[11]+par_sis[124];
                
                var cod     = "";
                var cod_ofe = "";

                $("#grid_publicar_ofertas table.grid tr").each(function(){   
                    if($(this).find("td.ckb_oferta input").attr("checked")){
                        cod = $(this).attr("id");
                        if( cod != ""){
                           cod_ofe += cod.fillCodPub();
                        } 
                    }
                });
    
                $.ajax({
                    type: "POST",
                    url : url,
                    data : "det="+cod_ofe,
                    dataType : "json",
                    success : function(){
                        $ventanaModal.find("span.spn_loading").hide();
                        $ventanaModal.find("#btn_aceptar").attr("disabled", false);
                        $("#bgmodal").find("a.cerrar-link").click();
                        cargarDatosPublicarOferta();
                        mostrarAlerta('exito',"Las ofertas se publicaron con exito.");
                    }
                });
            }
        }
    }
}

/*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

function encolarConocimiento(obj){
    var cont;
    var temp1 = 0;
    var temp2 = 0;
    
    $("#tbl_oferta_conocimientos td").each(function(){
        if($(this).attr("id") == $(obj).val()){
            temp1 = 1;
        }
    });
    
    $("#tbl_oferta_conocimientos tr").each(function(){
        cont = 0;
        $(this).children("td").each(function(){            
            cont++;
        });
        if($(obj).is(":checked") & cont < 3 & temp1 == 0 & temp2 == 0){
            $(this).append("<td id='"+$(obj).val()+"'><label value='"+$(obj).val()+"'>"+$(obj).siblings("span").html()+"</label><span onclick='desencolarConocimiento(this)'>x</span></td>");
            temp2 = 1;
            return;
        }
    });  
    if(cont > 2 & temp1 == 0){
        $("#tbl_oferta_conocimientos").append("<tr><td id='"+$(obj).val()+"'><label value='"+$(obj).val()+"'>"+$(obj).siblings("span").html()+"</label><span onclick='desencolarConocimiento(this)'>x</span></td></tr>");
        return;
    }
}

function encolarOtrosConocimientos(obj){
    var conocimientos   = $(obj).val().split(",");
    var cono_trim       = "";    
    var temp            = 0;
    var i               = 0;
    var cont;
    
    $.each(conocimientos, function(){
        temp = 0;
        $("#tbl_oferta_conocimientos tr").each(function(){
            cont = 0;
            $(this).children("td").each(function(){            
                cont++;
            });
            if(cont < 3){
                cono_trim = conocimientos[i].trim();
                if(cono_trim != ""){
                    $(this).append("<td id='0000-0"+cono_trim+"'><label value='0000-0"+cono_trim+"'>"+cono_trim+"</label><span onclick='desencolarConocimiento(this)'>x</span></td>");
                    temp = 1;
                }
                i++;
                return;
            }
        });
        if(cont > 2 & temp == 0){
            cono_trim = conocimientos[i].trim();
            $("#tbl_oferta_conocimientos").append("<tr><td id='0000-0"+cono_trim+"'><label value='0000-0"+cono_trim+"'>"+cono_trim+"</label><span onclick='desencolarConocimiento(this)'>x</span></td></tr>");
            i++;
        }
    });
    $(obj).val("");
}

function desencolarConocimiento(obj){
    $(obj).parent().remove();
}

/*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
